The performance of input/output (I/O) bound applications is frequently dominated by the time required by the operating system to schedule read and write operations and by the response times of the storage devices in completing such operations. Changes in workload, as well as in the software and hardware environments, can affect the latency of disk I/O requests. Consequently, it is useful to define performance models to anticipate the effects of a change. This can be especially important in virtualized data centers, where the concurrent shared use of a storage device by several Virtual Machines (VMs) managed by a Virtual Machine Monitor (VMM) can lead to significant performance degradation.
In such systems, estimates of I/O contention for a given VM placement configuration can aid management and consolidation decisions. However, modeling the performance of disk requests can be challenging due to the joint interaction of the I/O flows issued by several VMs and because of the complexity of caching mechanisms, scheduling algorithms, device drivers, and communication protocols employed by both the VMs and the VMM.